Array (এরে) একটি ডেটা স্ট্রাকচার যা একধরণের নির্দিষ্ট আকারের সমান ধরনের উপাদান সংরক্ষণ করে। এটি একটি লিনিয়ার ডেটা স্ট্রাকচার, যার মধ্যে একাধিক ভ্যালু একই টাইপের হতে পারে এবং ঐসব ভ্যালু একটি নির্দিষ্ট অর্ডারে সংরক্ষিত থাকে। অ্যারে খুবই গুরুত্বপূর্ণ ডেটা স্ট্রাকচার, যা বিভিন্ন ধরনের তথ্য সংরক্ষণে ব্যবহৃত হয়, যেমন ইন্টিজার, স্ট্রিং, বুলিয়ান ইত্যাদি।
Array কি?
এরে হল একটি নির্দিষ্ট আকারের ডেটা স্ট্রাকচার যেখানে একই ধরনের ডেটা একত্রে একটি কনটেইনারে সংরক্ষিত হয়। প্রত্যেকটি উপাদানকে একটি নির্দিষ্ট ইনডেক্স (অথবা পজিশন) দিয়ে অ্যাক্সেস করা যায়। অ্যারে সাধারণত নির্দিষ্ট আকারে সংজ্ঞায়িত করা হয় এবং এটি ফিক্সড সাইজের হয়, অর্থাৎ একবার সাইজ নির্ধারণ করা হলে পরে তা পরিবর্তন করা সম্ভব নয়।
এতে প্রতিটি উপাদানের জন্য মেমরি লোকেশন একটি নির্দিষ্ট পদক্ষেপে বাড়ানো হয়, যা দ্রুত অ্যাক্সেসের সুবিধা দেয়।
উদাহরণ:
int[] numbers = {1, 2, 3, 4, 5}; // একটি অ্যারে যা ৫টি পূর্ণসংখ্যা ধারণ করে
এখানে, numbers অ্যারেটি ৫টি পূর্ণসংখ্যা ধারণ করছে এবং প্রতিটি উপাদান একটি নির্দিষ্ট ইনডেক্সের মাধ্যমে অ্যাক্সেস করা সম্ভব।
Array এর প্রকারভেদ
এরে সাধারণত দুটি প্রধান প্রকারে বিভক্ত হয়: One-Dimensional Array (একমাত্রিক অ্যারে) এবং Multi-Dimensional Array (বহুমাত্রিক অ্যারে)।
1. One-Dimensional Array (একমাত্রিক অ্যারে)
একমাত্রিক অ্যারে এমন একটি অ্যারে, যার মধ্যে একটিমাত্র রো (row) বা কলাম (column) থাকে। এটি সবচেয়ে সাধারণ ধরনের অ্যারে, যেখানে সকল উপাদান একটি লিনিয়ার ফর্মে সংরক্ষিত থাকে। এই ধরনের অ্যারে সাধারণত সিরিয়াল ডেটা সংরক্ষণে ব্যবহৃত হয়।
উদাহরণ:
int[] numbers = {1, 2, 3, 4, 5}; // একটি একমাত্রিক অ্যারে
System.out.println(numbers[2]); // আউটপুট হবে 3, কারণ এটি ৩য় ইনডেক্সে রয়েছে
এখানে, numbers একটি একমাত্রিক অ্যারে যা ৫টি পূর্ণসংখ্যা ধারণ করছে। প্রতিটি উপাদান ইনডেক্সের মাধ্যমে অ্যাক্সেস করা হয়।
2. Multi-Dimensional Array (বহুমাত্রিক অ্যারে)
বহুমাত্রিক অ্যারে এমন একটি অ্যারে, যা একাধিক একমাত্রিক অ্যারে ধারণ করে। এটি একাধিক সারি এবং কলাম থাকতে পারে, এবং ডেটার একটি টেবিলের মত অর্গানাইজেশন তৈরির জন্য ব্যবহৃত হয়। বহুমাত্রিক অ্যারে সাধারণত ২D (দ্বিমাত্রিক) বা ৩D (ত্রিমাত্রিক) অ্যারে হয়ে থাকে।
উদাহরণ (2D Array):
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
}; // একটি ২D অ্যারে (ম্যাট্রিক্স)
System.out.println(matrix[1][2]); // আউটপুট হবে 6, কারণ এটি ২য় সারির ৩য় কলামে রয়েছে
এখানে, matrix একটি দ্বিমাত্রিক অ্যারে, যেখানে ৩টি সারি এবং ৩টি কলাম রয়েছে।
উদাহরণ (3D Array):
int[][][] cube = {
{
{1, 2}, {3, 4}
},
{
{5, 6}, {7, 8}
}
}; // একটি ৩D অ্যারে
System.out.println(cube[1][0][1]); // আউটপুট হবে 6, কারণ এটি দ্বিতীয় ব্লকের প্রথম সারির দ্বিতীয় কলামে রয়েছে
এখানে, cube একটি ত্রিমাত্রিক অ্যারে, যা একটি ৩D গ্রিডের মত কাজ করে।
সারাংশ
অ্যারে একটি গুরুত্বপূর্ণ ডেটা স্ট্রাকচার যা একই ধরনের ডেটা একত্রে সংরক্ষণ করতে ব্যবহৃত হয়। এর দুটি প্রধান প্রকার রয়েছে: One-Dimensional Array (একমাত্রিক অ্যারে) এবং Multi-Dimensional Array (বহুমাত্রিক অ্যারে)। একমাত্রিক অ্যারে সাধারণত একটি লিনিয়ার ফর্মে ডেটা সংরক্ষণ করে, whereas বহুমাত্রিক অ্যারে একাধিক সারি ও কলামের মাধ্যমে ডেটা সংরক্ষণ করতে ব্যবহৃত হয়। অ্যারে খুবই কার্যকরী ডেটা স্ট্রাকচার, যা দ্রুত অ্যাক্সেস এবং কার্যকরী অপারেশন নিশ্চিত করে।
Read more